package com.cloud.bc.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cloud.bc.model.entity.BcSingles;
import com.cloud.bc.model.request.SingleListRequest;
import com.cloud.bc.model.request.VideoListRequest;
import com.cloud.bc.model.request.VoiceListRequest;
import com.cloud.bc.model.response.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 单身资料
 *
 * @author douhaichao code generator
 * @date 2021-01-03 19:29:40
 */
@Repository
public interface BcSinglesMapper extends BaseMapper<BcSingles> {

    /**
     * 官方推荐
     */
    List<BcSingles> getOfficialRecommendation();

    /**
     * 今日推荐
     */
    List<BcSingles> getTodayRecommendation(@Param("ids") String ids);

    void updateBrowse(@Param("userId") Integer userId);

    List<SingleSearchResponse> selectSingleSearch(@Param("page") Page page, @Param("req") SingleListRequest req);

    //声音
    List<VoiceListResponse> selectVoiceList(@Param("page") Page page, @Param("req") VoiceListRequest req);

    //视频
    List<VideoListResponse> selectVideoList(@Param("page") Page page, @Param("req") VideoListRequest req);

    List<MomenSingleResponse> selectMomenSingle(@Param("userIdStr") String userIdStr);

    KarmaListResponse selectKarmaList(@Param("page")Integer page);

    boolean removeShow(@Param("req") BcSingles req);

    TeamCountResponse getTeamCount(@Param("userId") Integer userId);

}
